package com.dhcc.DRGsHosp.facade;

import com.dhcc.DRGsHosp.facade.dto.IndexCalDTO;

import java.util.List;
import java.util.Map;


public interface PayGroupFacade {
	/**
	 * 获取最小值  最大值  中位数
	 *  findFeeExtremal.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param dto
	 *  @return 
	 *  @Date:2017年8月22日上午10:04:51
	 */
	List<Map<String,Object>> findFeeExtremal(IndexCalDTO dto);
	/**
	 * 更新付费病组
	 *  updatePayFee.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param dto
	 *  @param action
	 *  @return 
	 *  @Date:2017年8月23日下午3:37:24
	 */
	boolean updatePayFee(IndexCalDTO dto, String action);
	/**
	 * 
	 * @methodname    :queryCostStructureBenchmarking
	 * @description   : 查询标杆法费用构成
	 * @param         :
	 * @author        :chenhanlin
	 * @return        :
	 * @date          :2017年08月16日
	 */
	List<Map<String,Object>> queryCostStructureBenchmarking(IndexCalDTO dto, String sliderVal);
	/**
	 * 查询标差法法费用构成
	 *  queryCostStructureStdDev.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param dto
	 *  @param sliderVal
	 *  @return 
	 *  @Date:2017年8月25日下午3:06:43
	 */
	List<Map<String,Object>> queryCostStructureStdDev(IndexCalDTO dto, String sliderVal);
	/**
	 * 查询超标病例费用构成
	 *  queryOverCaseFee.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param dto
	 *  @param sliderVal
	 *  @param intervel 
	 *  @return 
	 *  @Date:2017年8月29日上午9:24:10
	 */
	List<Map<String,Object>> queryOverCaseFee(IndexCalDTO dto, double sliderVal, String intervel);
	/**
	 * Description ：各病组病例明细  
	 * date: 2017年8月30日 下午2:47:46  
	 * @author ShaozhiYuan
	 * @version V1.0 DHC
	 */
	List<Map<String,Object>> queryCostCaseCompare(IndexCalDTO dto, String sliderVal);
	/**
	 * Description ：出院病例明细表 
	 * date: 2017年8月31日 上午10:59:45  
	 * @author ShaozhiYuan
	 * @version V1.0 DHC
	 */
	List<Map<String,Object>> queryCostOutCaseList(IndexCalDTO dto, String sliderVal);
	/**
	 * 
	 *  getNormalDistributionData.  
	 *  @Description：病例分布特征
	 *  @Author WENYI
	 *  @param dto
	 *  @param normalParam
	 *  @param interval
	 *  @param queryType
	 *  @return 
	 *  @Date:2017年9月4日上午10:34:17
	 */
	public Map<String, Object> getNormalDistributionData(IndexCalDTO dto, String normalParam,int interval,String queryType);
	
	/**
	 *  付费病组明细
	 *  findPayGroupDetails.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param dto
	 *  @return 
	 *  @Date:2018年2月25日下午3:10:37
	 */
	List<Map<String,Object>> findPayGroupDetails(IndexCalDTO dto);
	
	/**
	 * @Description: 查询分组结果使用的病组
	 * @param  
	 * @return  
	 * @throws
	 * @author chenhanlin
	 * @date 2018/9/4 15:51 
	 */
	List<Map<String, Object>> findAllDRG(IndexCalDTO dto);
}
